Skip to content

fix: iOS production 배포 준비와 보안 흐름 보강 - #22

Open
manNomi wants to merge 6 commits into
mainfrom
agent/ios-production-readiness
Open

fix: iOS production 배포 준비와 보안 흐름 보강#22
manNomi wants to merge 6 commits into
mainfrom
agent/ios-production-readiness

Conversation

@manNomi

@manNomi manNomi commented Aug 1, 2026

Copy link
Copy Markdown
Contributor

작업 내용

  • 로그인 갱신 실패와 계정 전환 시 다른 계정의 로컬 데이터가 노출되지 않도록 세션 격리와 미동기화 데이터 보존 흐름을 보강했습니다.
  • 서버의 보호된 업로드 API에만 인증 토큰을 붙이는 이미지 소스를 적용하고 리캡·여행·라이브러리 화면의 서버 계약 불일치를 정리했습니다.
  • 저장 중복 요청, 여행 종료 동기화, 라이브러리 페이지네이션 등 출시 전 데이터 유실 가능성을 보완했습니다.
  • iOS Privacy Manifest와 스토어 배포 설정을 실제 수집 데이터 기준으로 정리했습니다.
  • Expo SDK 56 권장 버전에 맞춰 네이티브 의존성을 갱신하고 production 의존성 취약점을 제거했습니다.
  • 웹 서비스는 배포하지 않는다고 명시하고 EAS API·업로드·법적 문서 URL을 GCP api.soundlog.shop으로 일원화했습니다.
  • GCP Cloud DNS와 네이티브 앱 전용 배포 절차를 문서화했습니다.

검증

  • npm ci
  • npm run typecheck
  • npm test -- --run (8 files, 52 tests)
  • npm run doctor (18/18)
  • npm run check:store-release
  • SOUNDLOG_SERVER_ROOT=/Users/manwook-han/Desktop/hmw/code/apps/soundlog/SoundLogServer npm run check:server-contract
  • npm audit --omit=dev --json (production vulnerabilities 0)
  • iOS Expo export

참고

  • 서버 배포와 보안 변경은 SoundLogServer PR #21과 함께 적용되어야 합니다.
  • 기존 프론트 GCP origin PR #21을 포함해 대체하는 정리 PR입니다.
  • Vercel Git 연동은 해제했으며 운영 배포 경로에 포함하지 않습니다.
  • 등록기관 네임서버를 GCP Cloud DNS로 위임하고 Apple Developer 최초 인증을 완료해야 공개 HTTPS와 TestFlight 제출을 최종 확인할 수 있습니다.

manNomi and others added 2 commits August 1, 2026 19:27
보안/데이터 유실 수정:
- refresh 실패 시 인증 상태만 초기화하고 미동기화 리캡 초안·여행 세션은 보존,
  계정 전환 시 다른 계정 데이터가 렌더 이전에 격리되도록 처리
- 여행 종료 Log 확정 게이트를 전역이 아닌 현재 세션 pending action 기준으로 축소
- 업로드 사진 조회를 인증 API(GET /v1/uploads/:fileId) 기반으로 전환,
  이미지 소스가 우리 API origin에만 토큰을 부착하도록 제한
- iOS Privacy Manifest에 실제 수집 데이터(이메일/위치/사진) 선언, targetSdk 고정
- 저장 버튼 더블탭 시 중복 idempotency key 생성 방지, 라이브러리 목록 페이지네이션 보존

이 브랜치에는 위 수정과 함께 커밋되지 않은 채 남아있던 로그인/온보딩/라이브러리
화면 등 진행 중이던 변경사항도 포함되어 있습니다.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Aug 1, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
sound-log-app Ready Ready Preview Aug 1, 2026 10:37am

SoundLogServer moved from AWS EC2 to a GCP Compute Engine VM, with
Caddy terminating HTTPS for api.soundlog.shop directly on the VM.
Updates EAS build env, docs, and the Vercel API-origin guard scripts
to match (api.soundlog.shop was previously deny-listed as a stale
origin from an earlier iteration; it's the current origin again).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@manNomi
manNomi marked this pull request as ready for review August 1, 2026 11:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant